Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
ІКТА
Факультет:
ЗІ
Кафедра:
Захист інформації

Інформація про роботу

Рік:
2024
Тип роботи:
Звіт про виконання лабораторної роботи
Предмет:
Криптографія

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА” ІКТА кафедра «Захист інформації»  Звіт про виконання лабораторної роботи №3 з дисципліни " Криптографія і стеганографія " ПОТОКОВІ ШИФРИ Мета роботи – Ознайомитися з основними алгоритмами побудови генераторів псевдовипадкових послідовностей та лінійними регістрами зсуву з зворотнім зв’язком. Завдання Підготувати програму на об'єктно-орієнтованій мові програмування, яка реалізовуватиме потоковий шифр на основі генератора з кількома РЗЛЗЗ, об’єднаних нелінійним способом, використовуючи дані відповідно до індивідуального завдання (див. табл.1). Таблиця 1 Варіант Генератор РЗЛЗЗ Поліном Р(х) Текст  9 WAKE 2 Фібоначчі   ПІБ   Теоретичні відомості WAKE WAKE - скорочення від Word Auio Key Encryption (Автоматичне шифрування слів ключем) - це алгоритм, придуманий Дэвидом Уилером (David Wheeler)[1589]. Він видає потік 32-бітових слів, які за допомогою XOR можуть бути використані для отримання шифротекста з відкритого тексту або відкритого тексту з шифротекста. Це швидкий алгоритм. WAKE працює в режимі CFB, для генерації наступного слова ключа використовується попереднє слово шифротекста. Алгоритм також використовує S -блок з 256 32-бітовых значень. Цей S -блок має одну особливу властивість: Старший байт усіх елементів є перестановкою усіх можливих байтів, а 3 молодші байти випадкові. Спочатку по ключу згенеруємо елементи S-блоку, Si. Потім проініціалізуєм чотири регістри з використанням того ж або іншого ключа : a0,b0,c0 і d0. Для генерації 32-бітового слова потоку ключів Ki .  Слово шифротекста Сі є XOR слова відкритого тексту Рi з Ki. Потім відновимо чотири регістра:     Функція M є  Знак >>означає звичайне, не циклічне зрушення управо. Молодші 8 бітів х+у є входом S -блоку.  Рис.1 WAKE Найціннішою якістю WAKE є його швидкість. Проте він чутливий до розкриття з вибраним відкритим текстом або вибраним шифротекстом. Цей алгоритм використовувався в попередній версії антивірусної програми д-ра Соломона. Регістр Фібоначчі. Загальний вид рекурентного співвідношення, що визначає генератор Фібоначчі, задається рівнянням  , де - параметри генератора; елемент представляє собою двійковий k-вектор і дія виконується покомпонентно. Рис.4. Регістр зсуву з лінійним зворотнім зв’язком Фібоначчі Приклад: рядок (32, 7, 5, 3, 2, 1, 0) означає, що якщо взяти 32-бітовий регістр зсуву і генерувати нові біти XOR-складанням тридцять другого, сьомого, п'ятого, третього, другого і першого бітів, то результуюча послідовність матиме максимальний період - вона пройде через 232 - 1 значень до того, як почне повторюватися. РЗЛЗЗ в програмній реалізації працюють досить повільно, і швидкість можна збільшити застосуванням для програмування мови Асемблер замість Сі. Ще одне можливе рішення - запускати 16 РЗЛЗЗ (або 32, залежно від розміру слова в комп'ютері) у паралельному режимі. Така схема використовує масив слів, так що кожна бітова комірка регістру представлена окремим РЗЛЗЗ. При умові, що всі вони мають один і той же поліном зворотного зв'язку, така схема працює досить швидко. У загальному випадку найкращий спосіб оновлювати стани регістрів зсуву - це множити поточний стан на відповідні двійкові матриці. Текст програми: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; class Program { static void Main(string[] args) { Lab3 m = new Lab3(); m.Laba(); } } class Lab3 { public uint[] Fibinachi(uint[] Vhidnui, uint[] PochatDani, uint[] ZvorotniZviaz) { uint alfa = 0; uint index = 0; while (index < Vhidnui.Length) { alfa = 0; for (int i = 0; i < PochatDani.Length; i++) ...
Антиботан аватар за замовчуванням

22.01.2014 03:01

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини